package com.odata.springboot.starter.odata.packagesacn;

import java.net.URL;

/**
 * 配合 scanner扫描使用
 * @author : yongxiang
 * @description : 
 * @param
 * @date : 16:01 2021/6/30
*/
public class StringUtil {
     private StringUtil() {

     }
     /**
      * "file:/home/whf/cn/fh" -> "/home/whf/cn/fh"
      * "jar:file:/home/whf/foo.jar!cn/fh" -> "/home/whf/foo.jar"
      */
     public static String getRootPath(URL url) {
         String fileUrl = url.getFile();
         int pos = fileUrl.indexOf('!');

         if (-1 == pos) {
             return fileUrl;
         }

         return fileUrl.substring(5, pos);
     }

     /**
      * "cn.fh.lightning" -> "cn/fh/lightning"
      * @param name
      * @return
      */
     public static String dotToSplash(String name) {
         return name.replaceAll("\\.", "/");
     }

     /**
      * "Apple.class" -> "Apple"
      */
     public static String trimExtension(String name) {
         int pos = name.indexOf('.');
         if (-1 != pos) {
             return name.substring(0, pos);
         }

         return name;
     }

     /**
      * /application/home -> /home
      * @param uri
      * @return
      */
     public static String trimURI(String uri) {
         String trimmed = uri.substring(1);
         int splashIndex = trimmed.indexOf('/');

         return trimmed.substring(splashIndex);
     }
 }